package com.itheima.test7;

/**
 * 构造代码块(成员代码块)
 *
 * - 位置: 类中方法外定义
 * - 特点: 每次构造方法执行的时，都会执行该代码块中的代码，并且在构造方法执行前执行
 * - 作用: 将多个构造方法中相同的代码，抽取到构造代码块中，提高代码的复用性
 *
 * 父 早于 子
 * 构造代码块早于构造方法
 */
public class Test01 {

    public static void main(String[] args) {

        //Fu fu= new Fu();
        Zi zi= new Zi();
       // Fu fu2= new Fu();
    }
}
class  Fu{

    {

        System.out.println("父类构造代码块执行了");
    }
    public Fu(){

        System.out.println("父类的构造方法");
    }

}
class Zi extends Fu{

    {
        System.out.println("子类的构造代码块");

    }
    public Zi(){
        System.out.println("子类的构造方法");
    }
}